PostgreSQL中,database,schema,table之间关系
从逻辑上看,schema,table,都是位于database之下。
首先,在postgres数据库下建立表(相当于建立在public schema下):
[pgsql@localhost bin]$ ./psql -d postgres psql (9.1.2) Type "help" for help. postgres=# create table tab200(id integer); CREATE TABLE postgres=# \q
然后,再在tester数据库下建立表(相当于建立在public schema下):
[pgsql@localhost bin]$ ./psql -d tester psql (9.1.2) Type "help" for help. tester=# create table tab200(id integer); CREATE TABLE tester=# \q
然后,再在其他的数据库下进行查看:
[pgsql@localhost bin]$ ./psql psql (9.1.2) Type "help" for help. pgsql=# SELECT * FROM information_schema.tables WHERE table_name='tab200'; table_catalog | table_schema | table_name | table_type | self_referencing_column_name | reference_generation | user_de fined_type_catalog | user_defined_type_schema | user_defined_type_name | is_insertable_into | is_typed | commit_action ---------------+--------------+------------+------------+------------------------------+----------------------+-------- -------------------+--------------------------+------------------------+--------------------+----------+--------------- (0 rows) pgsql=# \q
然后,再在 postgres数据库和tester数据库下分别查看:
[pgsql@localhost bin]$ ./psql -d tester psql (9.1.2) Type "help" for help. tester=# SELECT * FROM information_schema.tables WHERE table_name='tab200'; table_catalog | table_schema | table_name | table_type | self_referencing_column_name | reference_generation | user_de fined_type_catalog | user_defined_type_schema | user_defined_type_name | is_insertable_into | is_typed | commit_action ---------------+--------------+------------+------------+------------------------------+----------------------+-------- -------------------+--------------------------+------------------------+--------------------+----------+--------------- tester | public | tab200 | BASE TABLE | | | | | | YES | NO | (1 row) tester=# \q
[pgsql@localhost bin]$ ./psql -d postgres psql (9.1.2) Type "help" for help. postgres=# SELECT * FROM information_schema.tables WHERE table_name='tab200'; table_catalog | table_schema | table_name | table_type | self_referencing_column_name | reference_generation | user_de fined_type_catalog | user_defined_type_schema | user_defined_type_name | is_insertable_into | is_typed | commit_action ---------------+--------------+------------+------------+------------------------------+----------------------+-------- -------------------+--------------------------+------------------------+--------------------+----------+--------------- postgres | public | tab200 | BASE TABLE | | | | | | YES | NO | (1 row)